package com.ruoyi.yipaiju.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * fo_foreclosed_house对象 fo_foreclosed_house
 * 
 * @author liuwp
 * @date 2023-03-01
 */
public class ForeclosedHouse extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** latitude */
//    @Excel(name = "latitude")
    private String latitude;

    /** longitude */
//    @Excel(name = "longitude")
    private String longitude;

    /** title */
//    @Excel(name = "title")
    private String title;

    /** province */
//    @Excel(name = "province")
    private String province;

    /** city */
//    @Excel(name = "city")
    private String city;

    /** district */
//    @Excel(name = "district")
    private String district;

    /** address */
    @Excel(name = "地址")
    private String address;

    /** built_up_area_square_centimeter */
    @Excel(name = "面积/㎡")
    private BigDecimal builtUpAreaSquareCentimeter;

    /** auction_url */
//    @Excel(name = "auction_url")
    private String auctionUrl;

    /** price_yuan 起拍价 */
    @Excel(name = "起拍/元")
    private Long priceYuan;
    private Long priceYuan1;

    /** deal_price 交易价，当前价，成交价 */
//    @Excel(name = "deal_price")
    private Long dealPrice;

    /** stage */
//    @Excel(name = "stage")
    private String stage;

    /** status */
//    @Excel(name = "status")
    private String status;

    /** start_time */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    @Excel(name = "start_time", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /** end_time */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "拍卖日", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    /** browse_count */
//    @Excel(name = "browse_count")
    private Integer browseCount;

    private Integer browseCount1;

    /** subscriber_count */
//    @Excel(name = "subscriber_count")
    private Integer subscriberCount;

    /** participant_count */
//    @Excel(name = "participant_count")
    private Integer participantCount;

    /** estimate_price_yuan */
//    @Excel(name = "estimate_price_yuan")
    private Long estimatePriceYuan;

    /** market_price_yuan */
    @Excel(name = "市价/元")
    private Long marketPriceYuan;

    /** unit_price_yuan */
//    @Excel(name = "unit_price_yuan")
    private Integer unitPriceYuan;

    /** deposit_yuan */
//    @Excel(name = "deposit_yuan")
    private Long depositYuan;

    /** increase_price_yuan */
//    @Excel(name = "increase_price_yuan")
    private Long increasePriceYuan;

    /** residential_quarter_name */
//    @Excel(name = "residential_quarter_name")
    private String residentialQuarterName;

    /** house_level */
//    @Excel(name = "house_level")
    private Integer houseLevel;

    /** use */
//    @Excel(name = "use")
    private String use;

    /** free_up_status */
//    @Excel(name = "free_up_status")
    private String freeUpStatus;

    /** viewing_detail */
//    @Excel(name = "viewing_detail")
    private String viewingDetail;

    /** taxation */
//    @Excel(name = "taxation")
    private String taxation;

    /** origin */
//    @Excel(name = "origin")
    private String origin;

    /** court */
//    @Excel(name = "court")
    private String court;

    /** phone */
//    @Excel(name = "phone")
    private String phone;

    /** announcement */
//    @Excel(name = "announcement")
    private String announcement;

    /** notice */
//    @Excel(name = "notice")
    private String notice;

    /** description */
//    @Excel(name = "description")
    private String description;

    /** traffic */
//    @Excel(name = "traffic")
    private String traffic;

    /** education */
//    @Excel(name = "education")
    private String education;

    /** hospital */
//    @Excel(name = "hospital")
    private String hospital;

    /** amenity */
//    @Excel(name = "amenity")
    private String amenity;

    /** discount_rate */
    @Excel(name = "折扣率", suffix = "%", scale = 0, roundingMode = BigDecimal.ROUND_HALF_UP)
    private BigDecimal discountRate;

    /** house_type */
//    @Excel(name = "house_type")
    private String houseType;

    /** upload_time */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    @Excel(name = "upload_time", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date uploadTime;

    // 是否收藏， 0否，1是
    private Integer isfavor;
    private Integer isnotice;
    // 收藏id
    private Long favorId;
    // 通知id
    private Long noticeId;

    private String banner;

    private String nameMd5;

    private Double distance;

    private String position;

    private List<StorageRelationship> storageRelationships;

    /*********新加的搜索条件***********/
    private Long priceMin;
    private Long priceMax;
    private BigDecimal areaMin;
    private BigDecimal areaMax;
    private String date;
    /**
     * 默认排序 id 倒序
     * -price_yuan  价格高到低
     * price_yuan   价格低到高
     * -start_time  最新发布 按开始时间倒序
     * discount_rate折扣高到低，折扣高的也就是值小的
     */
    private String orderings;

    private Long spiderHouseId;

    private String addressNE;

    private String[] statusArr;
    private String[] stageArr;
    private String[] houseTypeArr;

    private String startTimeStr;

    public Long getPriceYuan1() {
        return priceYuan1;
    }

    public void setPriceYuan1(Long priceYuan1) {
        this.priceYuan1 = priceYuan1;
    }

    public String getStartTimeStr() {
        return startTimeStr;
    }

    public void setStartTimeStr(String startTimeStr) {
        this.startTimeStr = startTimeStr;
    }

    public String[] getStageArr() {
        return stageArr;
    }

    public void setStageArr(String[] stageArr) {
        this.stageArr = stageArr;
    }

    public String[] getHouseTypeArr() {
        return houseTypeArr;
    }

    public void setHouseTypeArr(String[] houseTypeArr) {
        this.houseTypeArr = houseTypeArr;
    }

    public String[] getStatusArr() {
        return statusArr;
    }

    public void setStatusArr(String[] statusArr) {
        this.statusArr = statusArr;
    }

    public String getAddressNE() {
        return addressNE;
    }

    public void setAddressNE(String addressNE) {
        this.addressNE = addressNE;
    }

    public Long getSpiderHouseId() {
        return spiderHouseId;
    }

    public void setSpiderHouseId(Long spiderHouseId) {
        this.spiderHouseId = spiderHouseId;
    }

    public List<StorageRelationship> getStorageRelationships() {
        return storageRelationships;
    }

    public void setStorageRelationships(List<StorageRelationship> storageRelationships) {
        this.storageRelationships = storageRelationships;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public Integer getBrowseCount1() {
        return browseCount1;
    }

    public void setBrowseCount1(Integer browseCount1) {
        this.browseCount1 = browseCount1;
    }

    public Integer getIsnotice() {
        return isnotice;
    }

    public void setIsnotice(Integer isnotice) {
        this.isnotice = isnotice;
    }

    public Long getPriceMin() {
        return priceMin;
    }

    public void setPriceMin(Long priceMin) {
        this.priceMin = priceMin;
    }

    public Long getPriceMax() {
        return priceMax;
    }

    public void setPriceMax(Long priceMax) {
        this.priceMax = priceMax;
    }

    public BigDecimal getAreaMin() {
        return areaMin;
    }

    public void setAreaMin(BigDecimal areaMin) {
        this.areaMin = areaMin;
    }

    public BigDecimal getAreaMax() {
        return areaMax;
    }

    public void setAreaMax(BigDecimal areaMax) {
        this.areaMax = areaMax;
    }

    public String getOrderings() {
        return orderings;
    }

    public void setOrderings(String orderings) {
        this.orderings = orderings;
    }

    public Double getDistance() {
        return distance;
    }

    public void setDistance(Double distance) {
        this.distance = distance;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public String getNameMd5() {
        return nameMd5;
    }

    public void setNameMd5(String nameMd5) {
        this.nameMd5 = nameMd5;
    }

    public String getBanner() {
        return banner;
    }

    public void setBanner(String banner) {
        this.banner = banner;
    }

    public Long getFavorId() {
        return favorId;
    }

    public void setFavorId(Long favorId) {
        this.favorId = favorId;
    }

    public Long getNoticeId() {
        return noticeId;
    }

    public void setNoticeId(Long noticeId) {
        this.noticeId = noticeId;
    }

    public Integer getIsfavor() {
        return isfavor;
    }

    public void setIsfavor(Integer isfavor) {
        this.isfavor = isfavor;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setLatitude(String latitude) 
    {
        this.latitude = latitude;
    }

    public String getLatitude() 
    {
        return latitude;
    }
    public void setLongitude(String longitude) 
    {
        this.longitude = longitude;
    }

    public String getLongitude() 
    {
        return longitude;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setProvince(String province) 
    {
        this.province = province;
    }

    public String getProvince() 
    {
        return province;
    }
    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }
    public void setDistrict(String district) 
    {
        this.district = district;
    }

    public String getDistrict() 
    {
        return district;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setBuiltUpAreaSquareCentimeter(BigDecimal builtUpAreaSquareCentimeter) 
    {
        this.builtUpAreaSquareCentimeter = builtUpAreaSquareCentimeter;
    }

    public BigDecimal getBuiltUpAreaSquareCentimeter() 
    {
        return builtUpAreaSquareCentimeter;
    }
    public void setAuctionUrl(String auctionUrl) 
    {
        this.auctionUrl = auctionUrl;
    }

    public String getAuctionUrl() 
    {
        return auctionUrl;
    }

    public void setStage(String stage) 
    {
        this.stage = stage;
    }

    public String getStage() 
    {
        return stage;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }
    public void setBrowseCount(Integer browseCount) 
    {
        this.browseCount = browseCount;
    }

    public Integer getBrowseCount() 
    {
        return browseCount;
    }
    public void setSubscriberCount(Integer subscriberCount) 
    {
        this.subscriberCount = subscriberCount;
    }

    public Integer getSubscriberCount() 
    {
        return subscriberCount;
    }
    public void setParticipantCount(Integer participantCount) 
    {
        this.participantCount = participantCount;
    }

    public Integer getParticipantCount() 
    {
        return participantCount;
    }

    public void setResidentialQuarterName(String residentialQuarterName) 
    {
        this.residentialQuarterName = residentialQuarterName;
    }

    public String getResidentialQuarterName() 
    {
        return residentialQuarterName;
    }
    public void setHouseLevel(Integer houseLevel) 
    {
        this.houseLevel = houseLevel;
    }

    public Integer getHouseLevel() 
    {
        return houseLevel;
    }
    public void setUse(String use) 
    {
        this.use = use;
    }

    public String getUse() 
    {
        return use;
    }
    public void setFreeUpStatus(String freeUpStatus) 
    {
        this.freeUpStatus = freeUpStatus;
    }

    public String getFreeUpStatus() 
    {
        return freeUpStatus;
    }
    public void setViewingDetail(String viewingDetail) 
    {
        this.viewingDetail = viewingDetail;
    }

    public String getViewingDetail() 
    {
        return viewingDetail;
    }
    public void setTaxation(String taxation) 
    {
        this.taxation = taxation;
    }

    public String getTaxation() 
    {
        return taxation;
    }
    public void setOrigin(String origin) 
    {
        this.origin = origin;
    }

    public String getOrigin() 
    {
        return origin;
    }
    public void setCourt(String court) 
    {
        this.court = court;
    }

    public String getCourt() 
    {
        return court;
    }
    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }
    public void setAnnouncement(String announcement) 
    {
        this.announcement = announcement;
    }

    public String getAnnouncement() 
    {
        return announcement;
    }
    public void setNotice(String notice) 
    {
        this.notice = notice;
    }

    public String getNotice() 
    {
        return notice;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }
    public void setTraffic(String traffic) 
    {
        this.traffic = traffic;
    }

    public String getTraffic() 
    {
        return traffic;
    }
    public void setEducation(String education) 
    {
        this.education = education;
    }

    public String getEducation() 
    {
        return education;
    }
    public void setHospital(String hospital) 
    {
        this.hospital = hospital;
    }

    public String getHospital() 
    {
        return hospital;
    }
    public void setAmenity(String amenity) 
    {
        this.amenity = amenity;
    }

    public String getAmenity() 
    {
        return amenity;
    }
    public void setDiscountRate(BigDecimal discountRate) 
    {
        this.discountRate = discountRate;
    }

    public BigDecimal getDiscountRate() 
    {
        return discountRate;
    }
    public void setHouseType(String houseType) 
    {
        this.houseType = houseType;
    }

    public String getHouseType() 
    {
        return houseType;
    }
    public void setUploadTime(Date uploadTime) 
    {
        this.uploadTime = uploadTime;
    }

    public Date getUploadTime() 
    {
        return uploadTime;
    }

    public Long getPriceYuan() {
        return priceYuan;
    }

    public void setPriceYuan(Long priceYuan) {
        this.priceYuan = priceYuan;
    }

    public Long getDealPrice() {
        return dealPrice;
    }

    public void setDealPrice(Long dealPrice) {
        this.dealPrice = dealPrice;
    }

    public Long getEstimatePriceYuan() {
        return estimatePriceYuan;
    }

    public void setEstimatePriceYuan(Long estimatePriceYuan) {
        this.estimatePriceYuan = estimatePriceYuan;
    }

    public Long getMarketPriceYuan() {
        return marketPriceYuan;
    }

    public void setMarketPriceYuan(Long marketPriceYuan) {
        this.marketPriceYuan = marketPriceYuan;
    }

    public Integer getUnitPriceYuan() {
        return unitPriceYuan;
    }

    public void setUnitPriceYuan(Integer unitPriceYuan) {
        this.unitPriceYuan = unitPriceYuan;
    }

    public Long getDepositYuan() {
        return depositYuan;
    }

    public void setDepositYuan(Long depositYuan) {
        this.depositYuan = depositYuan;
    }

    public Long getIncreasePriceYuan() {
        return increasePriceYuan;
    }

    public void setIncreasePriceYuan(Long increasePriceYuan) {
        this.increasePriceYuan = increasePriceYuan;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("latitude", getLatitude())
            .append("longitude", getLongitude())
            .append("title", getTitle())
            .append("province", getProvince())
            .append("city", getCity())
            .append("district", getDistrict())
            .append("address", getAddress())
            .append("builtUpAreaSquareCentimeter", getBuiltUpAreaSquareCentimeter())
            .append("auctionUrl", getAuctionUrl())
            .append("priceYuan", getPriceYuan())
            .append("dealPrice", getDealPrice())
            .append("stage", getStage())
            .append("status", getStatus())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("createTime", getCreateTime())
            .append("browseCount", getBrowseCount())
            .append("subscriberCount", getSubscriberCount())
            .append("participantCount", getParticipantCount())
            .append("estimatePriceYuan", getEstimatePriceYuan())
            .append("marketPriceYuan", getMarketPriceYuan())
            .append("unitPriceYuan", getUnitPriceYuan())
            .append("depositYuan", getDepositYuan())
            .append("increasePriceYuan", getIncreasePriceYuan())
            .append("residentialQuarterName", getResidentialQuarterName())
            .append("houseLevel", getHouseLevel())
            .append("use", getUse())
            .append("freeUpStatus", getFreeUpStatus())
            .append("viewingDetail", getViewingDetail())
            .append("taxation", getTaxation())
            .append("origin", getOrigin())
            .append("court", getCourt())
            .append("phone", getPhone())
            .append("announcement", getAnnouncement())
            .append("notice", getNotice())
            .append("description", getDescription())
            .append("traffic", getTraffic())
            .append("updateTime", getUpdateTime())
            .append("education", getEducation())
            .append("hospital", getHospital())
            .append("amenity", getAmenity())
            .append("discountRate", getDiscountRate())
            .append("houseType", getHouseType())
            .append("uploadTime", getUploadTime())
            .toString();
    }
}
